Phát triển gói cài đặt Windows_Installer

Tạo một gói cài đặt cho một ứng dụng mới không phải là một việc dễ dàng. Cần phải xác định tệp nào phải được cài đặt, ở đâu và với những khoá đăng ký nào. Bất kỳ hoạt động không-theo-chuẩn nào cũng có thể được thực hiện bằng cách sử dụng Tác vụ tùy chỉnh, thường được phát triển trong DLL. Có một số sản phẩm thương mại và phần mềm miễn phí để hỗ trợ tạo các gói MSI, bao gồm cả Visual Studio (lên đến VS 2010)[9], InstallShieldWiX. Ở mức độ khác nhau, giao diện người dùng và hành vi có thể được cấu hình để sử dụng trong các tình huống ít phổ biến hơn như cài đặt không giám sát. Sau khi chuẩn bị, gói cài đặt được "biên dịch" bằng cách đọc hướng dẫn và tệp từ máy địa phương của nhà phát triển và tạo tệp.msi.

Giao diện người dùng (hộp thoại) được trình bày khi bắt đầu cài đặt có thể được thay đổi hoặc được cấu hình bởi kỹ sư thiết lập phát triển trình cài đặt mới. Có một ngôn ngữ giới hạn các nút, trường văn bản và nhãn có thể được sắp xếp theo một chuỗi các hộp thoại. Gói trình cài đặt phải có khả năng chạy mà không có giao diện người dùng, cho cái gọi là "cài đặt không giám sát".

Xác nhận ICE

Microsoft cung cấp một bộ Đánh giá sự nhất quán nội bộ (ICE) có thể được sử dụng để phát hiện các vấn đề tiềm ẩn với cơ sở dữ liệu MSI.[10] Các quy tắc ICE được kết hợp thành các tệp CUB, là các tệp MSI bị xoá đi chứa các hành động tuỳ chỉnh để kiểm tra nội dung của cơ sở dữ liệu MSI mục tiêu cho các cảnh báo và lỗi xác thực. Xác nhận ICE có thể được thực hiện với các công cụ Platform SDK Orca và msival2, hoặc với các công cụ xác nhận vận chuyển với các môi trường tác giả khác nhau.

Ví dụ, một vài quy tắc ICE là:

  • ICE09: Xác nhận rằng bất kỳ thành phần nào dành cho thư mục System được đánh dấu là vĩnh viễn.
  • ICE24: Xác nhận rằng mã sản phẩm, phiên bản sản phẩm và ngôn ngữ sản phẩm có các định dạng thích hợp.
  • ICE33: Xác nhận rằng bảng Registry không được sử dụng cho dữ liệu phù hợp hơn cho một bảng khác (Class, Extension, Verb, v.v.).

Giải quyết các cảnh báo và lỗi của ICE là một bước quan trọng trong quá trình phát hành.

Tài liệu tham khảo

WikiPedia: Windows_Installer http://filext.com/file-extension/msi http://msdn.microsoft.com/en-us/library/2kt85ked.a... http://msdn.microsoft.com/en-us/library/aa367541(V... http://msdn.microsoft.com/en-us/library/aa367548(V... http://msdn.microsoft.com/en-us/library/aa368264(V... http://msdn.microsoft.com/en-us/library/aa369293(V... http://msdn.microsoft.com/en-us/library/aa369554(V... http://msdn.microsoft.com/en-us/library/aa371185(V... http://msdn.microsoft.com/en-us/library/aa371185.a... http://msdn.microsoft.com/en-us/library/aa371370(V...